Le module random est sufisant pour disposer des principales fonctions aléatoires.
import random
La fonction random() renvoie un nombre aléatoire entre 0 et 1.
a = random.random()
print(a)
La fonction randint(a,b) renvoie un entier entre a et b, bornes comprises.
b = random.randint(1,6)
print(b)
"""
Simulation de n lancés de pièces (Pile ou Face)
"""
import random
#---------------- Pile ou face avec randint(0,1)
def pile_face() :
res = random.randint(0,1) # valeurs possibles : 0 ou 1
if res==0 :
return "P"
else :
return "F"
#---------- nombre de lancés
n=100000
#---------- simulation
nb_Pile = 0
for k in range(n) :
res = pile_face()
if res == "P":
nb_Pile = nb_Pile +1
#-------- calcul de fréquence et affichage
f = nb_Pile/n
print(f"Fréquence du Pile : {f}")
"""
Simulation de n lancés de dés
"""
import random
#----------------- lancer de dé avec randint(1,6)
def lancer_de() :
res = random.randint(1,6) # valeurs possibles : 1, 2, 3, 4, 5 ou 6
return res
#---------- nombre de lancés
n=100000
#---------- simulation
nb_1 = 0
for k in range(n) :
res = lancer_de()
if res == 1 :
nb_1 = nb_1 +1
#-------- calcul de fréquence et affichage
f = nb_1/n
print(f"Fréquence du 1 : {f}")
"""
Simulation de n tirages dans une urne de boules Blanches ou Noires
"""
import random
#----------------- lancer de dé avec randint(1,nb_b+nb_n)
def tirage(nb_b,nb_n) :
res = random.randint(1,nb_b+nb_n) # valeurs possibles : 1, 2 jusqu'à nb_b+nb_n
if res <= nb_b : # les numéros de 1 à nb_b sont les blancs
return "B"
else :
return "N"
#---------- nombre de lancés
n=100000
#---------- répartition des boules
nb_B = 25
nb_N = 75
#---------- simulation
nb_B_tirés = 0
for k in range(n) :
res = tirage(nb_B,nb_N)
if res == "B" :
nb_B_tirés = nb_B_tirés +1
#-------- calcul de fréquence et affichage
f = nb_B_tirés/n
print(f"Fréquence des boules blanches : {f}")